var removeFile = $("#annexUpload").attr("removeFile");//是否可以删除文件 0-否，1-是
var downloadFile = $("#annexUpload").attr("downloadFile");//是否可以下载文件 0-否，1-是
var magnifyFile = $("#annexUpload").attr("magnifyFile");//是否可以放大查看图片 0-否，1-是（只适用于图片类的文件）
var loadFile = $("#annexUpload").attr("loadFile");//初始化的时候是否加载已上传的图片 0-否，1-是
$(function () {
    if (loadFile == "1") {
        loadInitFile();
    }
    //图片上传
    dggui.use('upload', function () {
        var upload = dggui.upload, uploadObj;
        var fileId = $('#annexUpload').attr("data-fileid");//上传文件id
        var fileType = $('#annexUpload').attr("data-fileType");//上传文件后缀
        var isOne = $('#annexUpload').attr("data-isOne");//是否只能上传一个
        if(isEmpty(fileType)){//如果附件后缀不存在，就修改为空
            fileType ='';
        }
        if(isEmpty(isOne)){//如果没有设置，允许上传多个
            isOne=false;
        }
        $.ajax({
            type: 'POST',
            url: sysInfo.basePath + '/annex/get_file_id.do',
            data: {fileId: fileId},
            dataType: 'json',
            success: function (result) {
                if(result.code == 0){
                    fileId = result.data;
                    upload.render({
                        elem: '#upload'
                        , url: sysInfo.basePath + '/annex/upload.do'
                        , multiple: true
                        , accept: 'file' //允许上传的文件类型
                        , size: 20 * 1024 //最大允许上传的文件大小
                        , data: {fileId: fileId,type:fileType,isOne:isOne}
                        , before: function (obj) {
                            uploadObj = obj;
                            dgg.dialog.loading();
                        }
                        , done: function (res) {
                            dgg.dialog.loading('close');
                            if (res.code == 0) {
                                var dataFile = res.data;
                                //预读本地文件示例，不支持ie8
                                uploadObj.preview(function (index, file, result) {
                                    if(isOne == 'true'){//移除前一个回显框
                                        $('#upload').parent().prev().remove();
                                    }

                                    if (file.name == dataFile.filename) {
                                        appendFile(dataFile);
                                    }
                                });
                                dgg.dialog.succeed("上传成功");
                            } else {
                                dgg.dialog.errors(res.msg);
                            }
                        }
                    });
                }else{
                    dggui.dialog.errors("获取fileid失败！");
                }
            }
        })
    });

    // 删除文件
    $(document).on('click', ".icon-shanchu", function () {
        var obj = $(this).parents(".upload-group-btn");
        var fileId = obj.find('[name=fileId]').val();
        var fileName = obj.find('[name=fileName]').val();
        dggui.dialog.confire("确定删除吗？", '删除提示', function () {
            $.post(sysInfo.basePath + '/annex/del.do', {fileId: fileId, fileName: fileName}, function (result) {
                if (result.code == 0) {
                    obj.parent().remove();
                    dggui.dialog.succeed("删除成功");
                } else {
                    dggui.dialog.errors("删除失败，请联系管理员");
                }
            }, 'json');
        });
    });
    // 下载文件
    $(document).on('click', ".icon-xiazai", function () {
        var obj = $(this).parents(".upload-group-btn");
        var fileId = obj.find('[name=fileId]').val();
        var fileName = obj.find('[name=fileName]').val();
        var fileUrl = obj.find('[name=filePath]').val();
        window.location.href = sysInfo.basePath + "/annex/download.do?id=" + fileId + "&fileUrl=" + fileUrl + "&fileName=" + fileName;
    });

    // 放大图片
    $(document).on('click', ".icon-chakan-yulan", function () {
        var obj = $(this).parents(".upload-group-btn");
        var fileUrl = obj.find('[name=filePath]').val();
        var IMG = '<div><img style="width: 100%" src="' + fileUrl + '" alt=""></div>';
        layer.photos({
            photos: { "data": [{"src": fileUrl}],anim: 5}
        });
    });
});


function loadInitFile() {
    var fileId = $('#annexUpload').attr("data-fileid");
    var fileType = $('#annexUpload').attr("data-fileType");//上传文件后缀
    if(isEmpty(fileType)){//如果附件后缀不存在，就修改为空
        fileType ='';
    }
    $.post(sysInfo.basePath + "/annex/find_files.do", {fileId: fileId,type:fileType}, function (result) {
        if (result.code == 0) {
            var data = result.data;
            if(data.length > 0){
                $.each(data, function (index, file) {
                    appendFile(file);
                })
            }
        } else {
            dggui.dialog.errors(result.msg);
        }
    });
}

function appendFile(file){
    var ext = getFileExt(file.filepath);
    var htm = new Array();
    htm.push("<li><div class=\"upload-img\">");
    if (isImgFile(file.filename)) {
        htm.push("<img src=\""+file.filepath+"\">");
    }else{
        htm.push("<i class=\"iconfont "+getFileClass(ext)+"\"></i>");
    }
    htm.push("</div>");
    htm.push("<div class=\"upload-hover-bg\"></div>");
    htm.push("<div class=\"upload-group-btn\">");
    if (isImgFile(file.filename)) {
        if(magnifyFile == "1"){
            htm.push("<a href=\"javascript:void(0)\"><i class=\"iconfont icon-chakan-yulan\"></i></a>");
        }
    }
    if(downloadFile == "1"){
        htm.push("<a href=\"javascript:void(0)\"><i class=\"iconfont icon-xiazai\"></i></a>");
    }
    if(removeFile == "1"){
        htm.push("<a href=\"javascript:void(0)\"><i class=\"iconfont icon-shanchu\"></i></a>");
    }
    htm.push("<input type=\"hidden\" name=\"fileName\" value=\""+file.filename+"\">");
    htm.push("<input type=\"hidden\" name=\"fileId\" value=\""+file.fileid+"\">");
    htm.push("<input type=\"hidden\" name=\"filePath\" value=\""+file.filepath+"\">");
    htm.push("</div>");
    htm.push("<p>"+file.filename+"</p>");
    htm.push("</li>");
    htm = htm.join('');
    $('#upload').parent().before(htm);
}